This invention relates to a method of, and system for, naming an object. In a preferred embodiment, the invention provides a system and method to name ontological objects in conjunction with a rule engine.
Ontology is a mode of representation of domain knowledge and is used to build business applications in the companies, for various different purposes. Ontological based systems are more and more widely used and an ontology is considered a standard representation in many industries and businesses. Knowledge-based systems infer on the ontological objects, allowing them to evolve along with the inferences. The ontological objects are thus dynamically evolving in the course of a working session with users. Ontology can be considered a data model, with class hierarchies and slots, and constraints (type, cardinality, domain, etc.) on the slots.
Ontological objects are also handled and inferred by rules. Rules are the appropriate logic to drive the behaviour of objects, for example to keep their coherence and integrity. For example, an ontological object HouseForSale, which denotes a house for sale, could have the following properties (or slots): an address, a surface, an owner, a list of room descriptions, a price, a list of strengths (near the metro, 200 meters to the commerce, next to the school, etc.), a status (for sale, transaction in progress, sold) and so on. In this example, the house is the concept (the class) which has several associated properties (the slots). In a business application for the real estate agencies, a house (as an ontological object) will evolve following the interactions with the users of the real estate application. The description of the house can change; the price of the house can also change, as well as its status, etc.
In the same application, rules can be used to perform pattern matching between requests and houses for sale. Each available house could be matched to a request using rules and further qualified by a score, depending on, for example, fitness to the price and the other criteria. All this are better expressed by rules. As an ontological object is the basic constituent of an application, it is advisable to name an ontological object to provide it with a meaningful title. At present, there is no consistent way in which objects are named and this reduces their effectiveness and usability.